package com.mwh.yuantu.dao.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mwh.yuantu.entity.ActivateInfoEntity;
import org.apache.ibatis.annotations.Param;

/**
 * (ActivateInfo)表数据库访问层
 *
 * @author maweihong
 * @since 2023-11-01 09:47:27
 */
public interface ActivateInfoMapper extends BaseMapper<ActivateInfoEntity> {

    /**
     * 根据用户id和验证类型，判断认证是否已存在
     * @param userId 用户id
     * @param type 验证类型
     * @return
     */
    ActivateInfoEntity selectByUserIdAndType(@Param("userId") String userId, @Param("type") String type);

    /**
     * 插入
     * @param activateInfo
     * @return
     */
    int insert(ActivateInfoEntity activateInfo);

    /**
     * 新增
     * @param activateInfo
     * @return
     */
    int update(ActivateInfoEntity activateInfo);

    /**
     * 删除验证记录
     * @param id
     * @return
     */
    int delete(String id);

    /**
     * 获取验证记录
     * @param email
     * @param code
     * @param type
     * @return
     */
    ActivateInfoEntity selectByEmailAndCodeAndType(
            @Param("email") String email,
            @Param("code") String code,
            @Param("type") String type
    );
}
